package com.ruoyi.project.business.askleave.mapper;

import java.time.LocalDate;
import java.util.List;
import com.ruoyi.project.business.askleave.entity.AskLeave;
import org.apache.ibatis.annotations.Param;

/**
 * 请假Mapper接口
 * 
 * @author ${author}
 * @date 2024-04-11
 */
public interface AskLeaveMapper {
    /**
     * 查询请假
     * 
     * @return 请假
     */
    public AskLeave selectAskLeaveById(Long id);

    /**
     * 查询请假列表
     * 
     * @return 请假集合
     */
    public List<AskLeave> selectAskLeaveList(AskLeave askLeave);

    /**
     * 新增请假
     * 
     * @return 结果
     */
    public int insertAskLeave(AskLeave askLeave);

    /**
     * 修改请假
     * 
     * @return 结果
     */
    public int updateAskLeave(AskLeave askLeave);

    /**
     * 删除请假
     * 
     * @return 结果
     */
    public int deleteAskLeaveById(Long id);

    /**
     * 批量删除请假
     * 
     * @return 结果
     */
    public int deleteAskLeaveByIds(Long[] ids);


    List<AskLeave> findUserLeaves(@Param("aimDayOfMonths") List<Integer> aimDayOfMonths,
                                  @Param("year") Integer year,
                                  @Param("month") Integer month,
                                  @Param("userId") Long userId,
                                  @Param("tenantId") Long tenantId);




}
